package com.rongji.cms.tools.file.oss.properties;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * OSS对象存储 配置属性
 *
 * @author Lion Li
 */
@Data
@Component
@ConfigurationProperties(prefix = "oss")
public class OssProperties {
    /**
     * 是否启用
     */
    private boolean enable;

    /**
     * 是否启用文档转换
     */
    private boolean enableDocConvert;
    /**
     * 是否启用图片转换
     */
    private boolean enableImageConvert;
    /**
     * 是否启用视频转换
     */
    private boolean enableVideoConvert;
    /**
     * 本地存储路径
     */
    private String localHome;

    /**
     * minio好像不需要
     */
    private String endpoint;

    /**
     * minio的话设置为minio的地址,注意端口号，不是minio的页面访问端口，比如192.168.212.224:9002,均不带http或者https
     */
    private String domain;

    /**
     * 本地存储时文件访问地址,比如 res.test.com
     */
    private String localBaseUrl;
    /**
     * 前缀
     */
    private String prefix;

    /**
     * ACCESS_KEY
     */
    private String accessKey;

    /**
     * SECRET_KEY
     */
    private String secretKey;

    /**
     * 存储空间名
     */
    private String bucketName;

    /**
     * 存储区域
     */
    private String region;

    /**
     * 是否https（Y=是,N=否）
     */
    private String isHttps;

    /**
     * 存储类别,目前就是enable为false设置local,enable为true设置minio
     */
    private String service;

    /**
     * 允许上传的图片格式
     */
    private String imageExt;
    /**
     * 允许上传的文档格式
     */
    private String docExt;
    /**
     * 允许上传的视频格式
     */
    private String videoExt;
    /**
     * 允许上传的其他格式
     */
    private String otherExt;

    /**
     * dpi越大转换后越清晰，相对转换速度越慢 dpi为96,100,105,120,150,200中,105显示效果较为清晰,体积稳定,dpi越高图片体积越大,一般电脑显示分辨率为96
     */
    private int dpi;

}
